1. Field of the Invention
The present invention relates to network communications, and more particularly to synchronized browse and chat functions on a computer network.
2. Description of Related Art
The location and exchange of data over computer networks is controlled by various network protocol. For example, the World Wide Web (hereinafter “Web”) is a system of communications protocols that presents information in documents that are capable of being linked to other documents. The documents are stored in a distributed manner across the Internet on the networked computers, and are accessed using programs known as browsers.
The Web is a system of protocols exchanged between a host computer running an application, known as a server, that delivers Web documents, and a user's computer, known as the client. Web documents are created using a markup language known as HTML, or Hypertext Markup Language. Hyperlinks are used to connect a document on one host computer to a document on another host computer. The following HTML paragraph is illustrative.                <P>        Welcome to the home page of <B> ichat, Inc.</B>. We develop <A HREF=“../products/index.html”>software</A> that expands the functionality and accessibility of real-time Internet chat systems.The HTML tag “<A HREF=” instructs the browser to create a link to a web page referenced by the embedded Uniform Resource Locator (“URL”), which is a type of address, and to use the word “software” embedded between the tags “> . . . </A>” as the hyperlinked word. The link may be a target, which is a word or phrase in another section of the same Web page; a relative link, which is another Web page within the current site, either forward or backward relative to the current page; or an external or absolute link, which is a Web page on another host.        
The dominant transfer protocol in use on the Web is HTTP, which stands for Hypertext Transfer Protocol. HTTP sits on top of TCP/IP and is a stateless protocol designed to transfer documents at a high rate of speed. As a stateless system, HTTP does not retain any information from one document transfer to the next. If additional documents are needed, each additional document must be transferred by opening a new HTTP connection, requesting the document, delivering the document, and closing the connection.
Although generally successful for many Web functions, the HTTP protocol is ineffective for enabling real-time functions such as chat over networks such as the Internet. However, chat is available over the Internet using the Internet Relay Chat protocol, or IRC. IRC uses the TCP/IP protocol in a client/server model. One IRC client initiates a channel by connecting to an IRC enabled server, which may or may not be on the same host as the Web server. Other clients join the channel by typing a join IRC command. The IRC server mediates the channel, passing each message to all channel members or to particular channel members, as determined by the originator of the message.
As initially implemented, IRC was of limited usefulness to users who wished to coordinate their chats with Web browsing. However, a technique known as integrated HTML chat has emerged for facilitating coordination of chats with browsing. In integrated HTML chat, chat is incorporated into the HTML frame and has the appearance of being embedded. The user receives an HTML page that contains the chat window, types his or her reply to a message in the chat window, and sends the revised page back to the originating server. Unfortunately, integrated HTML chat is a limited and inflexible technique. The chat and browser applications run independently of one another, relying on user interaction at particular points in time to achieve browse-chat coordination. Unfortunately, independence of operation causes the browser and chat applications to be generally uncoordinated, and the need for the user to coordinate their operation is inconvenient.